#pragma once
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <assert.h>
#include <time.h>
#include "Stack.h"
#include "queue.h"

void InsertSort(int* a, int n);

void ShellSort1(int* a, int n);

void ShellSort(int* a, int n);

void InsertSort(int* a, int n);

void SelectSort(int* a, int n);

void HeapSort(int* a, int n);

void QuickSort(int* a, int begin, int end);
void QuickSortNonR(int* a, int begin, int end);
void QuickSortNonRq(int* a, int begin, int end);
void QuickSortMax(int* a, int begin, int end);

void BubbleSort(int* a, int n);

void Print(int* a, int n);

void MergeSort(int* a, int n);
void MergeSortNonR(int* a, int n);

void CountSort(int* a, int n);